package cn.edu.ctbu.web.service.impl;

import cn.edu.ctbu.web.dao.AdminCourse;
import cn.edu.ctbu.web.dao.AdminGrade;
import cn.edu.ctbu.web.domain.Admin;
import org.apache.ibatis.annotations.Param;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

public interface IAdminService {
    // 使用管理员编号+密码进行登录
    public List<Admin> findByNoAndPassword(String no, String password);
    // 获取所有管理员信息——用于反强制登录
    public List<Admin> findAllAdmin();
    // 使用管理员编号查询管理员个人信息
    public Admin findByNo(String no);
    // 获取所有课程的信息
    public Page<AdminCourse> findAllCourse(Pageable pageable);
    // 获取所有成绩的信息
    public Page<AdminGrade> findAllGrade(Pageable pageable);
    // 更新课程表信息
    public void updateCourseAdmin(@Param("cno") String cno, @Param("cname") String cname, @Param("tno") String tno,
                                  @Param("credit") int credit, @Param("id") int id);
    // 删除课程表信息
    public void deleteCourseAdmin(@Param("id") String id);
    // 新增课程表信息
    public void insertCourseAdmin(@Param("cno") String cno, @Param("cname") String cname,
                                  @Param("tno") String tno, @Param("credit") int credit);
    // 查询课程表信息
    public Page<AdminCourse> searchCourseAdmin(@Param("cname") String cname, Pageable pageable);
}
